System.Activator.CreateInstance 方法

方法描述

使用无参数构造函数,创建指定泛型类型参数所指定类型的实例。

语法定义(C# System.Activator.CreateInstance 方法 的用法)

public static T CreateInstance()

参数/返回值

参数值/返回值 参数类型/返回类型 参数描述/返回描述
返回值 T 对新创建对象的引用。

提示和注释

编译器使用 CreateInstance 泛型方法实现由类型参数指定的类型的实例化。 例如,在下面的泛型方法中,new T()(在 C++ 中为 gcnew T())的实现使用 CreateInstance 泛型方法。

C#

C++

VB

复制

public static T Factory() where T:new()

{

return new T();

}

通常情况下,在应用程序代码中无需使用 CreateInstance,因为在编译时类型必须是已知的。 如果编译时类型已知,则可以使用正常的实例化语法(在 C# 中为 new 运算符,在 Visual Basic 中为 New,在 C++ 中为 gcnew)。

不存在带参数列表的 CreateInstance 泛型方法的重载,因为 CreateInstance 的非泛型重载已经提供了后期绑定构造函数决策。

System.Activator.CreateInstance 方法例子


异常

异常 异常描述
MissingMethodException 为 T 指定的类型没有无参数构造函数。

命名空间

namespace: System

程序集: mscorlib(在 mscorlib.dll 中)

版本信息

.NET Framework 受以下版本支持:4、3.5、3.0、2.0 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1 受以下版本支持:

适用平台

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。